package com.ruoyi.match.domain;

import java.math.BigDecimal;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 订单对象 ch_order
 * 
 * @author ruoyi
 * @date 2023-12-12
 */
public class ChOrder extends BaseEntity
{
    @ExcelIgnore
    private static final long serialVersionUID = 1L;

    /** 订单ID，主键，唯一且不能为空。 */
    @ExcelProperty(value = {"订单详情", "订单ID"})
    private Long id;

    /** 用户ID。 */
    @ExcelProperty(value = {"订单详情", "用户ID"})
    private Long userId;

    /** 订单代码，代表股票的代码。 */
    @ExcelProperty(value = {"订单详情", "订单代码"})
    private Long code;

    /** 交易方向，表示购买或出售（0：购买，1：出售）。 */
    @ExcelProperty(value = {"订单详情", "交易方向"})
    private Long direction;

    /** 订单类型（不知道是啥，先默认0吧）。 */
    @ExcelProperty(value = {"订单详情", "订单类型"})
    private Long type;

    /** 订单价格，表示每股的价格。 */
    @ExcelProperty(value = {"订单详情", "订单价格"})
    private BigDecimal price;

    /** 订单数量，表示购买的股票数量。 */
    @ExcelProperty(value = {"订单详情", "订单数量"})
    private Long ocount;

    /** 订单状态，（0：已取消；1：进行中；2：已完成）。 */
    @ExcelProperty(value = {"订单详情", "订单状态"})
    private Long status;

    /** 订单日期，以字符串形式存储。 */
    @ExcelProperty(value = {"订单详情", "订单日期"})
    private String date;

    /** 订单时间，以字符串形式存储。 */
    @ExcelProperty(value = {"订单详情", "订单时间"})
    private String time;
    @ExcelIgnore
    private Integer provinceId;
    @ExcelIgnore
    private Integer cityId;
    @ExcelIgnore
    private Integer areaId;
    @ExcelProperty(value = {"订单详情", "省"})
    private String provinceName;
    @ExcelProperty(value = {"订单详情", "市"})
    private String cityName;
    @ExcelProperty(value = {"订单详情", "区"})
    private String areaName;

    public Integer getProvinceId(){
        return provinceId;
    }
    public void setProvinceId(Integer provinceId) {
        this.provinceId = provinceId;
    }
    public Integer getCityId(){
        return cityId;
    }
    public void setCityId(Integer cityId) {
        this.cityId = cityId;
    }
    public Integer getAreaId(){
        return areaId;
    }
    public void setAreaId(Integer areaId) {
        this.areaId = areaId;
    }
    public void setId(Long id)
    {
        this.id = id;
    }
    public String getProvinceName(){
        return provinceName;
    }
    public void setProvinceName(String provinceName){
        this.provinceName = provinceName;
    }
    public String getCityName(){
        return cityName;
    }
    public void setCityName(String cityName){
        this.cityName = cityName;
    }
    public String getAreaName(){
        return areaName;
    }
    public void setAreaName(String areaName){
        this.areaName = areaName;
    }

    public Long getId() 
    {
        return id;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setCode(Long code) 
    {
        this.code = code;
    }

    public Long getCode() 
    {
        return code;
    }
    public void setDirection(Long direction) 
    {
        this.direction = direction;
    }

    public Long getDirection() 
    {
        return direction;
    }
    public void setType(Long type) 
    {
        this.type = type;
    }

    public Long getType() 
    {
        return type;
    }
    public void setPrice(BigDecimal price) 
    {
        this.price = price;
    }

    public BigDecimal getPrice() 
    {
        return price;
    }
    public void setOcount(Long ocount) 
    {
        this.ocount = ocount;
    }

    public Long getOcount() 
    {
        return ocount;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }
    public void setDate(String date) 
    {
        this.date = date;
    }

    public String getDate() 
    {
        return date;
    }
    public void setTime(String time) 
    {
        this.time = time;
    }

    public String getTime() 
    {
        return time;
    }


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("code", getCode())
            .append("direction", getDirection())
            .append("type", getType())
            .append("price", getPrice())
            .append("ocount", getOcount())
            .append("status", getStatus())
            .append("date", getDate())
            .append("time", getTime())
            .append("getProvinceName",getProvinceName())
            .append("cityName",getCityName())
            .append("areaName",getAreaName())
            .toString();
    }
}
